package com.shujia.day13;

public class Code04Exception {
    public static void main(String[] args) {
        /*
            异常捕获方式：
                对于多个不同类型的异常也可以使用如下格式：
                    catch( 异常类型1 | 异常类型2 ... e ){

                    }
               注意：
                  1.不同类型要求他们之间不存在有继承关系
                  2.对于异常可以使用其父类作为catch捕获的类型

         */


        int[] ints = {1, 2, 3, 4, 5};
        int a = 10;
        int b = 0;


        try {
//            System.out.println("a/b执行了吗？"); // 没执行
//            System.out.println(a / b);

            System.out.println(ints[6]);

        } catch (RuntimeException e) {  // () 中需要给定要捕获异常的类型 给定参数名（对象名）
            System.out.println(e.getMessage());  // 获取消息

            System.out.println("====打印的错误信息====");
            e.printStackTrace();  // 打印异常的全部信息 类型 消息 错误位置


        } finally {  // finally表示最终的意思
            System.out.println("这个作用域中的代码，不管前面有没有异常都会执行");
        }


    }
}
